/*
 * Copyright (c) 2025 Industrial Software Feature Database
 */
package com.comac.ins.isfd.service;


import com.comac.ins.common.mybatis.core.page.TableDataInfo;
import com.comac.ins.isfd.domain.bo.*;
import com.comac.ins.isfd.domain.bo.query.IsfdMetalMaterialStaticStrengthAnalysisQueryBo;
import com.comac.ins.isfd.domain.thirdParty.*;
import com.comac.ins.isfd.domain.vo.*;

import java.util.List;

/**
 * 第三方api接口service
 */
public interface IIsfdThirdPartyAccessService {

    /**
     * 静强度分析-金属材料分页列表接口查询
     */
    TableDataInfo<IsfdMetalMaterialStaticStrengthAnalysisThirdPartyVo> staticStrengthAnalysisMatList(IsfdMetalMaterialStaticStrengthAnalysisQueryBo isfdMetalMaterialStaticStrengthAnalysisQueryBo);


    /**
     * 铺层库-蒙皮属性查询/保存接口
     */
    IsfdLayupSkinPropertieVo queryLayupSkinPropertie(IsfdLayupSkinPropertieThridPartyBo bo);

    /**
     * 铺层库-金属壳单元查询/保存接口
     */
    IsfdLayupMetalCaseMetaVo queryLayupMetalCase(IsfdLayupMetalCaseMetaBo bo);

    /**
     * 型材库-属性查询/保存接口
     */
    IsfdSectionVo querySectionProperty(IsfdSectionThirdPartyBo bo);

    /**
     * 参数化建模模型库-保存接口
     */
    Boolean saveParametricModel(IsfdModelParametricBo bo);

    /**
     * 参数化建模模型库-查询接口
     */
    TableDataInfo<IsfdModelParametricVo> queryParametricModelList(IsfdModelParametricQueryThirdPartyBo queryBo);

    /**
     * 结构分析通用前处理模型库-保存接口
     */
    Boolean savePreprocessModel(IsfdModelGeneralPreprocessBo bo);

    /**
     * 结构分析通用前处理模型库-查询接口
     */
    TableDataInfo<IsfdModelGeneralPreprocessVo> queryPreprocessModelList(IsfdModelGeneralPreprocessQueryThirdPartyBo queryBo);

    /**
     * 结构分析通用前处理结果库-保存接口
     */
    Boolean savePreprocessResult(IsfdResultGeneralPreprocessBo bo);

    /**
     * 结构分析通用前处理模型库-查询接口
     */
    TableDataInfo<IsfdResultGeneralPreprocessVo> queryPreprocessResultList(IsfdResultGeneralPreprocessQueryThirdPartyBo queryBo);


    /**
     * 机型-部段接口
     */
    TableDataInfo<IsfdMeshModelStructureDefinitionVo> meshModelStructureDefinitionList(IsfdMeshModelStructureDefinitionsQueryThirdPartyBo queryThirdPartyBo);

    /**
     * 机型编号获取批次编号列表接口
     */
    List<String> collectBatchHistoryList(String modelNumber);

    /**
     * 机型编号获取轮次编号列表接口
     */
    List<String> collectRoundHistoryList(String modelNumber);

    /**
     * 结构分析模型库库-保存接口
     */
    Boolean saveModelInfo(IsfdModelBo bo);

    /**
     * 保存载荷分析实验任务数据
     */
    Boolean loadExperimentSave(IsfdLoadExperimentThridPartyBo bo);
}
